#ifndef PHONETOSETINFRARED_H
#define PHONETOSETINFRARED_H


#include "Command/BaseCmd.h"
#include "Protocol/CloudProtocol.h"
#include"DataType/Zigbee3Struct.h"
#include"DataType/Zigbee3InfraredStruct.h"

class OPInfraredToLearnCmd : public BaseCmd
{
    Q_OBJECT

public:
    enum{FunctionCode = CloudProtocol::Zigbee3InfraredOPlearn};

    Q_INVOKABLE explicit OPInfraredToLearnCmd(QObject *parent = 0);

    Package toPackage();
    void unPackage(Package package);
    QByteArray m_nwk;
    quint16 m_addr;
};


/*----------------------------------------------------------------------------*/


class TestInfraredToLearnCmd : public BaseCmd
{
    Q_OBJECT

public:
    enum{FunctionCode = CloudProtocol::zigbee3InfraredTest};

    Q_INVOKABLE explicit TestInfraredToLearnCmd(QObject *parent = 0);

    Package toPackage();
    void unPackage(Package package);
    QByteArray m_nwk;
    quint16 m_addr;
};


/*----------------------------------------------------------------------------*/


class SaveInfraredToLearnCmd : public BaseCmd
{
    Q_OBJECT

public:
    enum{FunctionCode = CloudProtocol::zigbee3InfraredSave};

    Q_INVOKABLE explicit SaveInfraredToLearnCmd(QObject *parent = 0);

    Package toPackage();
    void unPackage(Package package);
    QByteArray m_nwk;
    quint16 m_Value;
    QString m_Name;
};

#endif // PHONETOSETINFRARED_H
